import Vue from 'vue'
import App from './App'

import store from './store'
Vue.prototype.$store = store

import api from '@/api/flag.js'
Vue.prototype.$api = api

import tools from './utils/function/index.js'
Vue.prototype.$tools = tools

import {
	http
} from '@/api/service.js' // 全局挂载引入，配置相关在该index.js文件里修改
Vue.prototype.$http = http

import i18n from '@/i18n/index.js' // 国际化
Vue.prototype._i18n = i18n

Vue.config.productionTip = false
const list = ["navigateTo"]
const urlBmd = ['/pages/public/gameWebview']
// 生成环境去除打印
// if (process.env.NODE_ENV === 'production') {
// 	console.log = () => {}
// }
list.forEach((item) => {
	uni.addInterceptor(item, {
		// 页面跳转前进行拦截, invoke根据返回值进行判断是否继续执行跳转
		invoke(e) {
			console.log(e)
			console.log(store.state.app.isGamePage)
			let url = '';
			if (e.url.indexOf("?") != -1) {
				url = e.url.split("?")[0];
			} else {
				url = e.url
			}
			if (store.state.app.isGamePage && !urlBmd.includes(url)) { // 在游戏界面返回的 && H5用webview打开的页面
				if (uni.getStorageSync('token')) {
					store.dispatch('app/getRecycle', false)
				}
			}
			console.log('invoke', e)
		}
	});
})
// 导入invite.js
import invite from '@/components/invite/invite.js'
// 安装插件
Vue.use(invite)

App.mpType = 'app'
const app = new Vue({
	store,
	i18n,
	...App
})
app.$mount()

export default app